//app.js
App({
  globalData: {
    userId: '',
    openid:'',
    userInfo: null,
    screenWidth: wx.getSystemInfoSync().windowWidth,
    appid: 'wx900416b320d33e05',//appid需自己提供，
    secret: '69bfd38d575df683cf533a5d1c499aea',//secret需自己提供，
    isIpx: false,
    music_url: '',
    cloud_url:'https://6170-appet-930a45-1259110219.tcb.qcloud.la'
  },
  onHide: function () {
    wx.pauseBackgroundAudio();
  },
  onShow: function () {
    wx.playBackgroundAudio()
  },

  // 全局方法
  getPhysicalPX: function (val) {
    // 获取屏幕的物理像素
    return this.globalData.screenWidth / 750 * val
  }, 
  onLaunch: function () {
    var that = this
    // 获取设备型号 适配
    wx.getSystemInfo({
      success: function (res) {
        //model中包含着设备信息
        var model = res.model
        if (model.search('iPhone X') != -1) {
          that.globalData.isIpx = true;
        } else {
          that.globalData.isIpx = false;
        }
      }
    })
    //
    if (!wx.cloud) {
      console.error('请使用 2.2.3 或以上的基础库以使用云能力')
    } else {
      wx.cloud.init({
        traceUser: true,
      })
    }
    // 调用云函数获取openid
    wx.cloud.callFunction({
      name: 'login',
      data: {},
      success: res => {
        console.log('[云函数] [login] user openid: ', res.result.openid)
        that.globalData.openid = res.result.openid
      },
      fail: err => {
        console.error('[云函数] [login] 调用失败', err)
        wx.showToast({
          icon: 'none',
          title: '服务器错误，请重试'
        })
      }
    })

    // 检测小程序是否有新版本更新
    if (wx.canIUse('getUpdateManager')) {
      const updateManager = wx.getUpdateManager()
      updateManager.onCheckForUpdate(function (res) {
        // 请求完新版本信息的回调
        if (res.hasUpdate) {
          updateManager.onUpdateReady(function () {
            wx.showModal({
              title: '更新提示',
              content: '新版本已经准备好，是否重启应用？',
              success: function (res) {
                if (res.confirm) {
                  // 新的版本已经下载好，调用 applyUpdate 应用新版本并重启
                  updateManager.applyUpdate()
                }
              }
            })
          })
          // 小程序有新版本，会主动触发下载操作（无需开发者触发）
          wx.getUpdateManager().onUpdateFailed(function () {
            // 当新版本下载失败，会进行回调
            wx.showModal({
              title: '提示',
              content: '检查到有新版本，下载失败，请检查网络设置',
              showCancel: false
            })
          })
        }
      })
    } else { // 版本过低则无法使用该方法
      wx.showModal({
        title: '提示',
        confirmColor: '#5BB53C',
        content: '当前微信版本过低，无法使用该功能，请升级到最新微信版本后重试。'
      })
    }
  }
})
